"""
（1）创建服务端和客户端，选择一个通信端口，用Python语言编程实现通信演示程序；

（2）要求包含文件的基本操作，例如打开和读写操作。

（3）要求发送方从文件读取内容，加密后并传输；接收方收到密文并解密，保存在文件中。

（4）程序代码托管到码云。
"""

# -*- coding: utf-8 -*-
import base64
import socket
from Cryptodome.Cipher import DES

#客户端
key = b'abcdefgh'
des = DES.new(key, DES.MODE_ECB)  # 创建一个DES实例
s = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
s.connect(('127.0.0.1',8001))
path=input("请输入路径：")
name = input("请输入文件名称：")

with open(path+"\\"+name,'rb') as flie:
    data=flie.read()
print(data)
data=base64.b64encode(data)
key=base64.b64encode(key)
data=data+len(data)%8*b' '
data =des.encrypt(data)
print(data)
s.sendall(key)
s.sendall(data)
data = s.recv(1024*1024)
print(data.decode('utf-8'))
s.close()


